package com.sls.web.manager.game.service;

import java.util.List;

import com.sls.web.manager.game.pojo.EbaimiCheckFileInfo;
import com.sls.web.manager.game.pojo.EbaimiProduct;
import com.sls.web.manager.game.querybean.EbaimiProductQuery;
import com.sls.web.manager.page.Pagination;
import com.sls.web.manager.pojo.UserInfoVO;

public interface EbaiMiService {

	/**
	 * 分页查询
	 * 
	 * @return
	 */
	public Pagination<EbaimiProductQuery> queryProPagination(
			EbaimiProductQuery proQuery, UserInfoVO userInfoVO);

	/**
	 * 详情查询
	 * 
	 * @param id
	 * @param userInfoVO
	 * @return
	 */
	public EbaimiProduct queryById(String id, UserInfoVO userInfoVO);

	/**
	 * 修改产品信息
	 * 
	 * @param pro
	 * @param userInfoVO
	 */
	public void updatePro(EbaimiProduct pro, UserInfoVO userInfoVO);

	/**
	 * 同步上有商品
	 * 
	 * @param userInfoVO
	 */
	public void sync(UserInfoVO userInfoVO);

	/**
	 * 批量审核
	 * 
	 * @param supplierId
	 * @param priceRatio
	 * @param currentOperator
	 */
	public void confirmAudit(String supplierId, int priceRatio,
			UserInfoVO currentOperator);

	/**
	 * 批量上架
	 * 
	 * @param state
	 * @param currentOperator
	 */
	public void batchOnline(String state, UserInfoVO currentOperator);

	/**
	 * 批量下架
	 * 
	 * @param state
	 * @param currentOperator
	 */
	public void batchOffline(String state, UserInfoVO currentOperator);

	/**
	 * 查询所有产品信息
	 * 
	 * @param userInfoVO
	 * @return
	 */
	public List<EbaimiProduct> queryAllProduct(UserInfoVO userInfoVO);

	/**
	 * 余额查询
	 * 
	 * @param userInfoVO
	 * @return
	 */
	public EbaimiProduct queryBalance(EbaimiProductQuery proQuery,
			UserInfoVO userInfoVO);

	/**
	 * 订单查询
	 * 
	 * @param userInfoVO
	 * @return
	 */
	public EbaimiProduct queryOrder(EbaimiProductQuery proQuery,
			UserInfoVO userInfoVO);

	/**
	 * 商品新增
	 * 
	 * @param ebaimiProduct
	 * @param userInfoVO
	 * @author Wangxuegang
	 * @date 2013-05-11
	 */
	public void saveGoods(EbaimiProduct ebaimiProduct, UserInfoVO userInfoVO);

	/**
	 * 商品编辑
	 * 
	 * @param ebaimiProduct
	 * @param userInfoVO
	 * @author Wangxuegang
	 * @date 2013-05-11
	 */
	public void updateGoods(EbaimiProduct ebaimiProduct, UserInfoVO userInfoVO);

	/**
	 * 商品删除
	 * 
	 * @param ebaimiProduct
	 * @param userInfoVO
	 * @author Wangxuegang
	 * @date 2013-05-11
	 */
	public void deleteGoods(String id, UserInfoVO userInfoVO);

	/**
	 * 合作方的易百米商户ID--查询
	 * 
	 * @param ebaimiProduct
	 * @param userInfoVO
	 * @author Wangxuegang
	 * @date 2013-05-13
	 */
	public EbaimiProduct queryOid_loginid(UserInfoVO userInfoVO);

	/**
	 * 对账信息同步
	 * 
	 * @param userInfoVO
	 */
	public void sendCheckFile(UserInfoVO userInfoVO);

	/**
	 * 对账文件导出
	 * 
	 * @param EbaimiCheckFileInfo
	 * @param userInfoVO
	 * @return
	 */
	public List<EbaimiCheckFileInfo> queryProPaginationOfBill(String billDate,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 对账文件分页查询
	 * 
	 * @param info
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<EbaimiCheckFileInfo> queryByPage(
			EbaimiCheckFileInfo info, UserInfoVO userInfoVO) throws Exception;

}
